/// <reference path="./asset.ts" />

namespace FIREFLYX {
    type fileResInfo = {
        /** 文件名 */
        file: string,
        /** 资源类型 */
        resType: AssetType
    };
    export class AssetBundle extends Asset {
        public setData(abPath: string, resList: fileResInfo[]) {
            //
        }

        /**
         * 根据文件名获取资源
         * @param file 资源文件名
         */
        public getAsset(file: string): Nullable<Asset>;
        /**
         * 根据资源类型获取资源
         * @param resType 资源类型
         */
        // tslint:disable-next-line: unified-signatures
        public getAsset(resType: AssetType): Nullable<Asset>;
        public getAsset(fileSign: string | AssetType): Nullable<Asset> {
            //
            return null;
        }

        /**
         * 根据 资源类型 获取所有资源
         * @param resType 资源类型
         * @param out 资源返回的容器
         */
        public getAssetArray(resType: AssetType, out: Asset[]) {
            //
        }
    }
}